import java.io.Serializable;
import java.util.HashMap;


public class GameStatusInfo implements Serializable{
	enum GameStatus {
		GAME_IDLE,
		GAME_STARTING,
		GAME_STARTED
	};
	
	public HashMap <Integer, Integer> playerTreasureCount = null;
	public HashMap <Integer, String> playerIPs;
	public HashMap <Integer, GamePlayerInterface> players;
	
	public int backUpServerPlayerID;
	public int primaryServerPlayerID;
	
	private GameStatus gameStatus;
	private int lastPlayerJoinedID;
	private int gameStartRemainingTIme;
	
	
	private int mapSize;
	private int treasures;
	
	private int lastPlayerXCoord;
	private int lastPlayerYCoord;
	// the server port
	public int primaryServerPort;
	public int backUpServerPort;
	
	public void SetGameStatus (GameStatus status) {
		gameStatus=status;
	}
	
	public GameStatus GetGameStatus () {
		return gameStatus;
	}
	
	public void SetLastPlayerID (int id) {
		lastPlayerJoinedID=id;
	}
	
	public int GetLastPlayerID () {
		return lastPlayerJoinedID;
	}
	
	public void SetStartRemTime (int time) {
		gameStartRemainingTIme=time;
	}
	
	public int GetStartRemTime () {
		return gameStartRemainingTIme;
	}
	
	public void SetMapSize (int size) {
		mapSize=size;
	}
	
	public int GetMapSize () {
		return mapSize;
	}
	
	public void SetTreasureCount (int no) {
		treasures=no;
	}
	
	public int GetTreasureCount () {
		return treasures;
	}
	
	public void SetLastPlayerCoordinate(Coordinates coord) {
		lastPlayerXCoord = coord.x;
		lastPlayerYCoord = coord.y;
	}
	
	public int GetLastPlayerXCoord() {
		return lastPlayerXCoord;
	}
	
	public int GetLastPlayerYCoord() {
		return lastPlayerYCoord;
	}
	
}
